The Internet has made it possible for people to connect and share information globally in ways previously undreamt of. Social media platforms, for example, have enabled people on opposite sides of the globe to collaborate on ideas, discuss current events, or just share what they had for lunch. In the past, this spectacular resource has been somewhat limited to a communication between users having a common natural language (“Language”). In addition, users have only been able to consume content that is in their language, or for which a content provider is able to determine an appropriate translation based on a system setting or a network location (e.g., an Internet Protocol (“IP”) address).
While communication across the many different languages used around the world remains a particular challenge, machine translation services have attempted to address this concern. These services provide mechanisms for a user to provide a text using a web form, select one or more languages, and receive a translation of the text in a selected language. While these services have significantly increased people's ability to communicate across language barriers, they can require users to open a separate website, indicate the language they want the translation in, and even identify the language of the source document. The resulting translation is then shown in that separate website, which removes the content from the context provided by the original source. In some cases the translator service may not be able to locate portions of the source page to translate or may provide an unreadable version of the source website due to formatting changes resulting from the translation. In many cases, users find this process too cumbersome and may lose patience and navigate to a different website or may simply skip over text they do not understand, missing an opportunity to receive content. In addition, content providers may not be able to provide comprehensible media items to users if language classification identifiers, e.g., IP address and browser settings are not true indications of a user's preferred language.